package com.bestcem.xm.user.dao.mapper;

import com.bestcem.xm.user.entity.mysql.UserPrivateKey;
import org.apache.ibatis.annotations.Mapper;

/**
 * 公钥私钥mapper
 *
 * @author cuiqiongyu <qiongyu.cui@idiaoyan.com>
 * @version v1.0
 * @date 2022/1/4 10:30
 */
@Mapper
public interface UserPrivateKeyMapper {

    /**
     * 新增公钥私钥信息
     *
     * @param userPrivateKey 公钥私钥信息
     * @return int 新增成功的条数
     * @author cuiqiongyu <qiongyu.cui@idiaoyan.cn>
     * @date 2022/03/24 14:42
     */
    int insert(UserPrivateKey userPrivateKey);

    /**
     * 新增公钥私钥信息
     *
     * @param userPrivateKey 公钥私钥信息
     * @return int 新增成功的条数
     * @author cuiqiongyu <qiongyu.cui@idiaoyan.cn>
     * @date 2022/03/24 14:42
     */
    int insertSelective(UserPrivateKey userPrivateKey);

    /**
     * 根据主键id查询公钥私钥信息
     *
     * @param privateKeyId 主键id
     * @return com.bestcem.xm.user.entity.mysql.UserPrivateKey
     * @author cuiqiongyu <qiongyu.cui@idiaoyan.cn>
     * @date 2022/03/24 14:43
     */
    UserPrivateKey selectByPrimaryKey(String privateKeyId);

    /**
     * 根据主键id删除公钥私钥信息
     *
     * @param privateKeyId 主键id
     * @return int 删除成功的条数
     * @author cuiqiongyu <qiongyu.cui@idiaoyan.cn>
     * @date 2022/03/24 14:43
     */
    int deleteByPrimaryKey(String privateKeyId);

    /**
     * 根据主键id根据公钥私钥相关字段信息
     *
     * @param userPrivateKey 公钥私钥信息
     * @return int 更新成功的条数
     * @author cuiqiongyu <qiongyu.cui@idiaoyan.cn>
     * @date 2022/03/24 14:44
     */
    int updateByPrimaryKeySelective(UserPrivateKey userPrivateKey);

    /**
     * 根据主键更新公钥私钥的所有信息
     *
     * @param userPrivateKey 公钥私钥信息
     * @return int
     * @author cuiqiongyu <qiongyu.cui@idiaoyan.cn>
     * @date 2022/03/24 14:45
     */
    int updateByPrimaryKey(UserPrivateKey userPrivateKey);

}